package mh.demo.jdk.util;

import java.util.*;

public class CollectionsDemo {

    /**
     * 返回由指定map支持的set。生成的set具有指定的map拥相同的排序、并发和性能特征。
     * 实质上，此工厂方法提供了一个 {@link Set} 实现，对应于任何 {@link Map} 实现。
     * 对于已经有相应Set实现与Map的实现，不需要使用此方法。
     * {@link HashMap}与{@link HashSet}
     * {@link TreeMap}与{@link TreeSet}
     * 此方法返回的set上的每个方法调用都会委托给map调用，只有{@link Set#addAll(java.util.Collection)}例外。
     *
     * 在Spring的org.springframework.beans.factory.support.AbstractBeanFactory#alreadyCreated变量中有使用
     */
    public <E> Set<E> setFromMapDemo(Map<E, Boolean> map) {
        return Collections.newSetFromMap(map);
    }

}
